
TRIGGER PROCEDURE FOR WRITE OF fpx_mstr OLD BUFFER OLD_fpx_mstr.


{mfdeclre.i }
define new shared work-table wf_old_fpx_mstr like fpx_mstr.

/* fdn 2004/10/28 Modify Record processing */
HK:
do:
    if can-find(first dt_mstr where dt_table = "fpx_mstr" and dt_type = "SYNC") then
        run CreateSyncFlag(input "MOD", input recid(fpx_mstr), input "fpx_mstr").

    if not can-find ( first dt_mstr where dt_table = "fpx_mstr" and dt_type = "MOD" ) then leave HK.
    
    if not can-find ( first wf_old_fpx_mstr ) then do:
        create wf_old_fpx_mstr.
        if recid(wf_old_fpx_mstr)= -1 then .
    end.
    
    buffer-copy old_fpx_mstr to wf_old_fpx_mstr no-error.

    for each dt_mstr no-lock where dt_table = "fpx_mstr" and dt_type = "MOD" :
    
        case dt_field :

            when "fpx_part" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_fpx_mstr.fpx_part, input fpx_mstr.fpx_part,
                    input recid(fpx_mstr), input string(fpx_mstr.fpx_start), input fpx_mstr.fpx_site, input fpx_mstr.fpx_part, input fpx_mstr.fpx_cust,
                    input "", input "", input "", input "").

            when "fpx_site" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_fpx_mstr.fpx_site, input fpx_mstr.fpx_site,
                    input recid(fpx_mstr), input string(fpx_mstr.fpx_start), input fpx_mstr.fpx_site, input fpx_mstr.fpx_part, input fpx_mstr.fpx_cust,
                    input "", input "", input "", input "").

            when "fpx_start" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_fpx_mstr.fpx_start), input string(fpx_mstr.fpx_start),
                    input recid(fpx_mstr), input string(fpx_mstr.fpx_start), input fpx_mstr.fpx_site, input fpx_mstr.fpx_part, input fpx_mstr.fpx_cust,
                    input "", input "", input "", input "").

            when "fpx_cust" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_fpx_mstr.fpx_cust, input fpx_mstr.fpx_cust,
                    input recid(fpx_mstr), input string(fpx_mstr.fpx_start), input fpx_mstr.fpx_site, input fpx_mstr.fpx_part, input fpx_mstr.fpx_cust,
                    input "", input "", input "", input "").

            when "fpx_date" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_fpx_mstr.fpx_date), input string(fpx_mstr.fpx_date),
                    input recid(fpx_mstr), input string(fpx_mstr.fpx_start), input fpx_mstr.fpx_site, input fpx_mstr.fpx_part, input fpx_mstr.fpx_cust,
                    input "", input "", input "", input "").

            when "fpx_days[1]" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_fpx_mstr.fpx_days[1]), input string(fpx_mstr.fpx_days[1]),
                    input recid(fpx_mstr), input string(fpx_mstr.fpx_start), input fpx_mstr.fpx_site, input fpx_mstr.fpx_part, input fpx_mstr.fpx_cust,
                    input "", input "", input "", input "").

            when "fpx_status" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_fpx_mstr.fpx_status), input string(fpx_mstr.fpx_status),
                    input recid(fpx_mstr), input string(fpx_mstr.fpx_start), input fpx_mstr.fpx_site, input fpx_mstr.fpx_part, input fpx_mstr.fpx_cust,
                    input "", input "", input "", input "").

            when "fpx_weeks[1]" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_fpx_mstr.fpx_weeks[1]), input string(fpx_mstr.fpx_weeks[1]),
                    input recid(fpx_mstr), input string(fpx_mstr.fpx_start), input fpx_mstr.fpx_site, input fpx_mstr.fpx_part, input fpx_mstr.fpx_cust,
                    input "", input "", input "", input "").

            when "fpx_months[1]" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_fpx_mstr.fpx_months[1]), input string(fpx_mstr.fpx_months[1]),
                    input recid(fpx_mstr), input string(fpx_mstr.fpx_start), input fpx_mstr.fpx_site, input fpx_mstr.fpx_part, input fpx_mstr.fpx_cust,
                    input "", input "", input "", input "").

            when "fpx_mon_tot[1]" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input string(wf_old_fpx_mstr.fpx_mon_tot[1]), input string(fpx_mstr.fpx_mon_tot[1]),
                    input recid(fpx_mstr), input string(fpx_mstr.fpx_start), input fpx_mstr.fpx_site, input fpx_mstr.fpx_part, input fpx_mstr.fpx_cust,
                    input "", input "", input "", input "").

            when "fpx_userid" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_fpx_mstr.fpx_userid, input fpx_mstr.fpx_userid,
                    input recid(fpx_mstr), input string(fpx_mstr.fpx_start), input fpx_mstr.fpx_site, input fpx_mstr.fpx_part, input fpx_mstr.fpx_cust,
                    input "", input "", input "", input "").

            when "fpx_type" then
                run CreateDthist(input dt_table, input dt_field, input dt_type, input wf_old_fpx_mstr.fpx_type, input fpx_mstr.fpx_type,
                    input recid(fpx_mstr), input string(fpx_mstr.fpx_start), input fpx_mstr.fpx_site, input fpx_mstr.fpx_part, input fpx_mstr.fpx_cust,
                    input "", input "", input "", input "").

        end.

    end.
end.

{hkdttrans.i}
